import Vue from 'vue'
import App from './App'
import store from './store' // 状态管理器
import globalConfig from './common/js/globalConfigs' // 站点配置
import util from './common/js/util.js' // 常用类库
import * as Filter from './common/js/filter.js' // 过滤器
/* 引入 loadsh 库 start ，此处指引入数组操作，如需其他功能，可自定义引入 */
import Lo from 'lodash/core'; // 
import pullAt from 'lodash/pullAt';
Lo.pullAt = pullAt;
util.Lo = Lo; // 挂载到util上面
/*  引入loadsh end */
/* 路由导航 配置 start  */
/* 组件式导航引入 start */
import {
	router,
	RouterMount
} from '@/common/js/routers/routes.config.js'
import routerLInk from '@/common/js/routers/link.vue'
Vue.component('router-link', routerLInk)
Vue.use(router)
/* 路由导航 配置 end  */
Vue.config.productionTip = false
Vue.prototype.$store = store; // 状态管理

// 引入全局uView
import uView from 'uview-ui';
Vue.use(uView);

// 引入uView提供的对vuex的简写法文件 start
let vuexStore = require('@/store/$u.mixin.js');
Vue.mixin(vuexStore);
// 引入uView提供的对vuex的简写法文件 end
Vue.prototype.util = util; // 常用工具类
Vue.prototype.globalConfig = globalConfig; // 全局配置
Object.keys(Filter).forEach(key => {
	Vue.filter(key, Filter[key])
})
App.mpType = 'app';
const app = new Vue({
	...App
})
//v1.3.5起 H5端 你应该去除原有的app.$mount();使用路由自带的渲染方式
// #ifdef H5
RouterMount(app, router, '#app')
// #endif

// #ifndef H5
app.$mount(); //为了兼容小程序及app端必须这样写才有效果
// #endif
